Electronic calculator



Aug. 9, 1966 R.YK, RICHARDS 3,255,875

' 2 ELECTRONIC CALCULATOR Filed Nov. 19. 1962 R 18 Sheets-Sheet s 222- as 43 2s IS 2 223-8 236-4 2 236-1,

AMP. AMP. AMP.

MAGNETIC CORE ARRAY i g- 9 I. I R. K. m c zH Rps 3, ,87

ELECTRONIC CALCULATOR med Nov, 19, 1962' 18 sheets-sheet 4 AMP.

303 302, FIG. 4b

' fIZSV HUNDREDS TENS SlGN-- I y r rUNITS ,Nll mo N9'N8 N7 N6 N5 N4 N3 N2 NI o ACCUMULATOR I :3 INPUT REGISTER OUT 14 OUTPUT REGISTER IS NO REGISTER COUNTER INVENTOR.

Aug. 9, 1966 v RQKQRICHARDS 3,265,875

v ELECTRONIC CALCULATOR Filed Nov. '19. ,1962

406 403 rI25V FIG. 5n FIGQSo FIG.A5P

INV EN TOR.

l8 Sheets-Sheet 5 7 A g- 9, 1966 R. K. RICHARDS 3,265,875

- ELECTRONI C CALCULATOR la-l A |4 l l YI h I (i Y0 4 n) 7 Y2) I} m INVENTOR,

g- 9, 96 I R. K. RICHARDS 3,265,875

' ELECTRONIC CALCULATOR Filed Nov. 19, 1962 18 Sheets-Sheet-B I NO l X0 XI 2 X3 Y0 YIN Y2 FIG. 89

Kl K2 K3 K4 I 7 K5 K6 K7 5 K8 K9 1 1 I r I 1 1 l CF CF CF CF CF CF' CF 7 CF CF 5 f 566-l 566-2 566-5 '566-4' 566-5 566-6 566-7 566-6 566-9 565-] 565-2 565-5 565-4 565-5 565-6 565-7 565-8 565-9 K I 0| 0| OIAOIVOI o- F T F FIG. 8b

INV EN TOR.

WKW

Aug. 9, 1966 Filed Nov. 19, .1962

2 =R. K. RICHARDS ELECTRONIC, CALCULATOR 18 Sheets-Sheet 9 FIG. 9

Aug. ,9, 1966 R. K. RICHARD S 3,265,875

- I ELECTRONIC CALCULATOR I Filed Nov. 19, 1962 18 Sheets-Sheet 10 Aug. 9, 1966 R. K. RICHARDS ELECTRONIC CALCULATOR Filed Nov. 19, 1962 9 1966 v R. K. RICHARDS 3,2 ,87

ELECTRONIC CALCULATOR Filed NOV- 19, 1962 18 Sheets-Shet 13 Aug. 9, 1966 Filed Nov. 19, 1962 RICHARDS 3,265,875

' ELECTRONI C CALCULATOR l8 Sheets-Sheet 14.

IN V EN TOR.

7 Aug. 9, 1966 18 Sheets-Sheet l5 15-2 II-3A h 4-60 '5 I 4-6A FIGQ I5 Fvu-sc (To) 0-|l-5A (To) (Ho) (Su or Ry) (Sr) (Ad or Su) (Mu or Le or Ri) (Mu) (Di) (Mu or Di) 5-7A (Le) INV EN TOR.

Filed Nov. 19, 1962 Aug. 9, 1966 R. K. RICHARDS ELECTRONIC CALCULATOR 18 Sheets-Sheet 16 wK/m R. K. RICHARDS 3,265,875 ELECTRONIC CALCULATOR Filed Nov. 19. 1962 18 Sheets-Sheet 17 TI T2 T3 T4 T5 T6 -T7 T8 96 R. K. RICHARDS 3,265,875

ELECTRONIC CALCULATOR Filed Nov. 19, 1962 18 Sheets-Shet 18 To Ac' X Ad m XXXXXXXX PROGRAM agg ITY'PE OUT CARD a in a x 2 3 4 5 s 7 s 9 IO M n v o NWB ER 3 4 TYPE CARD TAB.

TAB.

RET;

comumw DETAIL CARD I FIGQ l8 INVENTOR.

mi /(m1 United States Patent 3,265,875 ELECTRONIC CALCULATOR Richard K. Richards, 1821 Allen Ave., Ames, Iowa Filed Nov. 19, 1962, Ser. No. 238,347

5 Claims. (Cl. 235-160) This invention pertains to electronic calculating machines, accounting machines, computers, tabulators, and

the like. In particular, it pertains to an improved organizational structure of such machines.

Electronic machines for performing computing and accounting functions are now Well known to the art and are widely used. Numerous designs and variations have been devised, but in general they fall into two categories. One category, for which the term computer is generally used, involves what is known as a stored program for the control of the sequencing, of operations. Storedprogram computers require a very large number of components and are accordingly very expensive. The other category, for which the machines are variously called calculators, accounting machines, or tabulators, utilize plug boards, pin boards, punched cards, punched tape, or perhaps still other means for controlling the sequencing of operations. Although somewhat less costly than stored-program computers, the machines of this secdisadvantages in those applications for which the input data and the output data are in the decimal system customarily used by people, :as is the. case for substantially all accounting or bookkeeping applications.

Also, the programming, that is, the setting up of a machine to perform a particular calculating sequence, of currently available equipment tends to be a complex problem generally requiring a substantial course of instruction and in many instances requiring heavy expensive hardware such as plugboards, each with a maze of wires.

Accordingly, it is a major object of this invention to provide a calculating machine that is relatively low in cost and which at the same time utilizes the familiar decimal number system and which is also adaptable to performing calculating sequences of substantial length and complexity, especially .as required for accounting applications.

Another object is to provide a calculating machine that is easy to program relative to the complexity of the arithmetic operations that are required to be performed.

Numerous other objects will become apparent in the following description .and claims, which together with the drawings, disclose a' preferred embodiment of the invention.

The various objectives are achieved through a novel logical structure of the machine, that is a novel arrangement of the an circuits, or circuits, gates, flip-flops, storage array, and other elements which comprise a cal- 3,265,875 Patented August 9, 1966 cally assigned to the operations of ADD, MULTIPLY,

SHIFT RIGHT, and so on. Instead, there is .a set of flop-flops which are used for all of the operations. These produce a set of state signals designated K1 through K9 that control the various parts of the machine in a manner to be hereinafter described in detail. In the course of performing an operation, the machine changes from one state to another, and while the machine is in any given state it performs functions that are dependent on the state and on the operation being performed. Another feature of the machine is that there are no physical registers for storing numbers (except a single one-digit register) other than the storage positions in' the main storage unit. Instead, certain storage locations in the main storage unit are designated as having register functions, although the physical and electrical characteristics of these registers are identical to the characteristics of all of the other storage locations in the storage unit. These registers are designated the Accumulator, Input Register, Output Register, and Multiplier-Quotient Register. Also, these registers are addressable in the same manner as any of the other storage registers. Still another feature of the machine is that there are no circuits specifically assigned to shifting numbers to the right and left as required in the SHIFT RIGHT and SHIFT LEFT operations and as are required in the course of the MULTIPLICATION and DIVISION operations. Instead, shifting action is gained through the means of an Up-down Counter that controls the selection of the digit position to be actuated in the storage unit. In the preferred embodiment of the invention a serial digit-by-digit scheme is used for entering the data to the input of the machine and also for transmitting the results to the output device. The internal calculating circuits also function in a serial digit-by-digit manner. However, the individual bits of each decimal digit, represented in theconventional 8-4-2-1 code, are transmitted in parallel in both the input-output circuits and in the calculating circuits. v

The input data to the machine can be supplied by any device that supplies one digit at a time. The preferred embodiment employs an IBM-type punched cardwhich is sensed from one end to the other. Also, the output digits can be transmitted to any device that will accept one digit at a time, specifically, for example, a typewriter. For parallel transmission of the digits of a number to and from the machine, storage buffers would ordinarily be used wherein these buffers are capable of accepting digits in one form and transmitting them in the other form as regards to serial or parallel.

Also, in the preferred embodiment, a punched card is used for the sequencing and control of the calculator with 12 holes being sensed simultaneously for the control of each instruction. The 12 holes correspond to the 12 holes in a given column of a standard IBM card, but control information could come from any other source such as two 6-hole paper tape units or even from an electronic storage unit of some sort.

The 12 information bits that are obtained from the simultaneous sensing of the 12 holes form a two-part instruction. One part is called an electronic instruction because it controls electronic circuits that perform the arithmetic operations of ADD, MULTIPLY, SHIFT RIGHT, and so on. The electronic instruction has an operation portion and an address portion not unlike the operation and address portions of conventional storedprogram computers. The electronic instruction eonsumes 4 bits for the operation portion and 4 bits for the address portion. The other part is called the mechanical instruction, and it consumes the remaining 4 of the 12 bits. The mechanical instruction controls such things as the electro-mechanical transmission of a digit to the output mechanism, the advancing of paper in the output mechanism, the change to an alternate source of succeeding instructions, and the printing of special characters and symbols.

A fundamental dilference between the electronic and mechanical instructions is that each electronic instruction pertains to entire numbers, which are of IO-digit-plus-sign length in the preferred embodiment, whereas each mechanical instruction pertains only to a single digit or to an operation controlled by a single pulse distributed to a specified circuit. In other words, as the machine proceeds through successive 12-hole columns of the punched program card, the machine at the reading of each 12 holes performs one complete -digit-plus-sign arithmetic operation internally and one l-digit operation or one one-pulse operation externally.

Ordinarily, the device supplying the input digits operates in step with the device supplying the program of instructions. That is, for each two-part instruction that is executed by the machine, one digit is entered into the machine from the input device. Inasmuch :as the mechanical instruction controls the output of digits, the output mechanism also operates in step with the device supplying the program of instructions in the sense that one digit per step of operation is supplied to the output mechanism. In actual timing, the output mechanism may lag the program mechanism in phase. An exception to this in-step operation can occur when, through a mechanical instruction or otherwise, the input mechanism is caused to be inoperative, in which case the programming device proceeds with operations on data already in the machine. Also, of course, the program may not call for any output functions on many program steps.

In the figures:

FIGURE 1 shows a block diagram of the calculator of this invention.

FIGURE 2 shows the magnetic core array that is a part of FIGURE 3.

FIGURE 3 shows the details of the Storage Unit and also the Storage Output Amplifiers and the major Address Contacts represented by blocks 118, 129, and 112, respectively, in FIGURE 1.

FIGURES 4a and 4b show the circuit and symbol, respectively, for the individual amplifiers used in the Storage Output Amplifiers appearing in FIGURE 3 and represented by block 129 in FIGURE 1.

FIGURE 4c is a chart showing the arrangement of storage positions and registers in the Storage Unit.

FIGURES 5a and 5b show the circuit and symbol, respectively, for the flip-flop used in this invention.

FIGURES 5c and 5d show the circuit and symbol, respectively, for the diode and circuit used in this invention.

FIGURES 5e and 5f show the circuit and symbol, respectively, for the diode or circuit used in this invention.

FIGURES 5g and 5h show the circuit and symbol, respectively, for the single-shot used in this invention.

FIGURES 5i and 5f show the circuit and symbol, respectively, for the cathode follower used in this invention.

FIGURES 5k and SI show the circuit and symbol, respectively, for the inverter used in this invention.

FIGURE 5m shows the symbol used for the combination of an inverter and a cathode follower.

FIGURES 5n and 50 show the circuit and symbol, respectively, for the diode gate used in this invention.

FIGURE 5p shows the symbol used for the gate circuit when the capacitor of the, gate is located in the circuit to which the gate is connected.

FIGURE 6a shows the details of the Start-Stop Flip- Flop and the Timing Pulse Generator represented by blocks 196 and 114, respectively, in FIGURE 1.

FIGURE 6b shows a timing chart for the pulses generated by the Timing Pulse Generator.

FIGURE 7 shows the details of the Up-down 4-Counter and Up-down 3-Counter represented by blocks 116 and 115, respectively, in FIGURE 1.

FIGURE 8a shows the details of the Digit Control Array represented by block 120' in FIGURE 1.

FIGURE 81) shows the details of the Electronic State Signal Generator represented by block 117 in FIGURE 1.

FIGURE 9 shows the details of the Address Control Array represented by block 119 in FIGURE 1.

FIGURE 10 shows the details of the Electronic State Control Array represented by block 12.2 in FIGURE 1.

FIGURE 11 shows the details of the Up-down Counter Control Array represented by block 121 in FIGURE 1.

FIGURE 12a shows the details of the Adder and Carry Flip-Flop represented by blocks 124 and 130, respectively, in FIGURE 1.

FIGURE 12b shows the details of the Storage Input Control represented by block 128 in FIGURE 1.

FIGURE 120 shows the details of the Output Control, Thyratrons, and Output Relay Coils represented by blocks 125, 127, and 113, respectively, in FIGURE 1.

FIGURE 13 shows the details of the Adder Input Array and Data Contacts represented by blocks 123 and 126, respectively, in FIGURE 1. FIGURE 13 also shows certain of the Address Contacts in block 112 in FIGURE 1.

FIGURE 14 shows the details of the Program Relay Coils and Data Relay Coils represented by blocks 103 and 104, respectively, in FIGURE 1. FIGURE 14 also shows switches that might be used for the Program Input Device and Data Input Device represented by blocks 101 and 102, respectively, in FIGURE 1.

FIGURE 15 shows the details of the Electronic Instruction Contacts represented by block 111 in FIGURE 1.

FIGURE 16 shows the details of the Mechanical Instruction Contacts, Output Relay Contacts, Output Device, and Miscellaneous Electromechanical Devices represented by blocks 108, 109, 110, and 131, respectively, in FIGURE 1.

FIGURE 17 shows a table that indicates the functioning of the calculator at the various pulse times for the various electronic states and for each of the various operations.

FIGURE 18 shows the position of the punched holes in a program card for an elementary program presented as an example, and it also shows the positions of the punched holes for one detail card used as an example with this program.

In FIGURE 1 a heavy line such as from block 126 to block 123 implies a path for data flow, where the data can be an input digit, a digit which is part of a number undergoing calculation, or an output digit. A relatively thin line such as from block 117 to block 111 implies a path for signals related to the program of instructions or to a control signal used in the actuation of any of the various parts of the calculator. In some instances a line corresponds to a single wire in the calculator, but in other instances a line corresponds to a group of several wires that carry similar signals. In the subsequent description of the calculator, the exact nature of each interconnecting line will be described.

Within the calculator the bits of the data digits are transmitted in parallel over four separate wires. The code used is the 8-421 code. For transmission from the Data Input Device 192 to the Data Relay Coils 104 and for transmission from the Output Relay Contacts 199 to the Output Device the l-out-of-lO code is 

3. A CALCULATOR COMPRISING OF STORAGE MEANS AND CALCULATING MEANS WHERE SAID STORAGE MEANS IS COMPRISED OF AT LEAST THREE ESSENTIALLY IDENTICAL ADDRESSES WITH EACH ADDRESS BEING CAPABLE OF STORING ONE NUMBER, MEANS FOR CAUSING A FIRST ONE OF SAID ADDRESSES TO FUNCTION AS AND THEREFORE TO BE ACCUMULATOR, MEANS FOR CAUSING A SECOND ONE OF SAID ADDRESSES TO FUNCTION AS AND THEREFORE BE A MULTIPLIER REGISTER, MEANS FOR CAUSING THE MULTIPLICATION OF THE NUMBER IN A THIRD ONE OF SAID ADDRESSES BY THE NUMBER IN SAID MULTIPLIER REGISTER, AND MEANS FOR CAUSING THE PRODUCT TO APPEAR IN SAID ACCUMULATOR, AND WHERE SAID MEANS FOR CAUSING SAID MULTIPLICATION INCLUDES MEANS FOR CAUSING THE NUMBER IN SAID THIRD ADDRESS TO BE ADDED REPEATEDLY INTO SAID ACCOMULATOR A NUMBER OF TIMES EQUAL TO THE VALUE OF THE HIGHEST ORDER DIGIT IN SAID MULTIPLIER REGISTER, MEANS FOR SHIFTING EACH DIGIT OF THE PARTIAL PRODUCT THUS GENERATED IS SAID ACCUMULATOR, MEANS FOR SHIFTING ORDER POSITION IN SAID ACCUMULATOR, MEANS FOR SHIFTING EACH DIGIT IN SAID MULTIPLIER REGISTER TO THE NEXT HIGHER ORDER POSITION IN SAID MULTIPLIER REGISTER MEANS FOR ADDING ONE TO THE DIGIT IN A PRESELECTED POSITION IN A PRESELECTED ADDRESS, MEANS FOR REPEATING SAID RPEATED ADDITION, SAID SHIFTING, AND SAID ADDITION OF ONE, AND MEANS FOR TERMINATING SAID MULTIPLICATION WHEN THE DIGIT IS SAID PRESELECTED POSITION HAS BEEN INCREASED TO A PRSELECTED VALUE. 